跨域获取iframe中的元素

您所在的位置:网站首页 获取iframe中的元素 跨域 跨域获取iframe中的元素

跨域获取iframe中的元素

2023-06-10 17:32| 来源: 网络整理| 查看: 265

跨域获取 iframe 中的元素是不可行的,因为浏览器的同源策略限制了从一个域名读取另一个域名的数据。

如果需要在不同的域名之间进行数据通信,可以使用跨域通信技术,如 JSONP, CORS, postMessage 等。其中,postMessage 是一种 HTML5 标准,它允许不同域名的页面之间进行安全的数据通信。

示例代码:

HTML 文件:

JavaScript 文件:

var iframe = document.getElementById('iframe'); iframe.contentWindow.postMessage('Hello World', 'http://example.com'); window.addEventListener('message', function(event) { if (event.origin !== 'http://example.com') { return; } console.log(event.data); });

在 iframe 中的 JavaScript 文件:

window.addEventListener('message', function(event) { if (event.origin !== 'http://example.com') { return; } console.log(event.data); event.source.postMessage('Hello from iframe', event.origin); });


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3